#ifndef QTPROJ_QGANTTCHART_HOUR_COLUMN_HEADER_QTH
#define QTPROJ_QGANTTCHART_HOUR_COLUMN_HEADER_QTH

#include "QGanttChartColumnHeader.hpp"

namespace QtProj
{


class QGanttChartHourColumnHeader: public QGanttChartColumnHeader
{
public:
	virtual void paint( QHeaderPaintContext& ctx);

	/// \brief It gets the max number of columns between the minimum time and maximum time provided by the model.
	virtual int maxNumberOfColumns( const QAbstractGanttModel& model) const;

private:
	///	\param cellDate the date of the cell to be painted.
	///	\param dayCellEnd the right side coordinate of the cell.
	/// \param bottom the lower limit of the cell, on vertical axis.
	/// \param dayCellStart the start coordinate of the day cell.
	void paintDayCell( QHeaderPaintContext& ctx, const QDate& cellDate, int dayCellStart, int dayCellEnd, int bottom);
	void paintHourCell( QHeaderPaintContext& ctx, const QDateTime& cellTime, int cellStart, int middleVert);
};


} // namespace QtProj

#endif // QTPROJ_QGANTTCHART_HOUR_COLUMN_HEADER_QTH
